﻿using System.Collections.Generic;
using Joy.Erp.BasicArchives.Asns;
using Joy.Erp.BasicArchives.Customers;
using Joy.Erp.BasicArchives.ItemMasters;
using Joy.Erp.BasicArchives.Procurements;
using Joy.Erp.BasicArchives.Production;
using Joy.Erp.BasicArchives.ProductionUnit;
using Joy.Erp.BasicArchives.Receipt;
using Joy.Erp.BasicArchives.Sales;
using Joy.Erp.BasicArchives.Staff;
using Joy.Erp.BasicArchives.Storage;
using Joy.Erp.BasicArchives.Suppliers;
using Volo.Abp.Application.Dtos;

namespace Joy.Erp.Ufida.Core
{
    public class ArchivesSyncAppService : UfidaAppService, IArchivesSyncAppService
    {
        public PagedResultDto<AnalysisDto> GetEmpty()
        {
            var list = new List<AnalysisDto>
            {
                new AnalysisDto { Id = typeof(ItemCategory).FullName, Order = 1 },
                new AnalysisDto { Id = typeof(Unit).FullName, Order = 2 },
                new AnalysisDto { Id = typeof(UnitGroup).FullName, Order = 3 },
                new AnalysisDto { Id = typeof(ItemMaster).FullName, Order = 4 },
                //new AnalysisDto{ Id = typeof(BomMaster).FullName, Order = 5 },
                new AnalysisDto { Id = typeof(Department).FullName, Order = 6 },
                new AnalysisDto { Id = typeof(Operator).FullName, Order = 7 },
                new AnalysisDto { Id = typeof(CustomerType).FullName, Order = 8 },
                new AnalysisDto { Id = typeof(Customer).FullName, Order = 9 },
                new AnalysisDto { Id = typeof(SupplierType).FullName, Order = 10 },
                new AnalysisDto { Id = typeof(Supplier).FullName, Order = 11 },
                new AnalysisDto { Id = typeof(Warehouse).FullName, Order = 12 },
                new AnalysisDto { Id = typeof(WorkCenter).FullName, Order = 13 },
                new AnalysisDto { Id = typeof(Equipment).FullName, Order = 14 },
                new AnalysisDto { Id = typeof(SaleOrderType).FullName, Order = 15 },
                new AnalysisDto { Id = typeof(PurchaseRequisitionType).FullName, Order = 16 },
                new AnalysisDto { Id = typeof(PurchaseOrderType).FullName, Order = 17 },
                new AnalysisDto { Id = typeof(AsnType).FullName, Order = 18 },
                new AnalysisDto { Id = typeof(ReceivementType).FullName, Order = 19 },
                //new AnalysisDto{ Id = typeof(PlanOrderType).FullName, Order = 20 },
                new AnalysisDto { Id = typeof(ProductionOrderType).FullName, Order = 21 },
            };

            return new PagedResultDto<AnalysisDto>(list.Count, list);
        }
    }
}
